/**
 * @param {string} secret
 * @param {string} guess
 * @return {string}
 */
 var getHint = function(secret, guess) {  // 数字只有10个。可以直接用数组存
    let a = 0,b=0;
    const arrs = new Array(10).fill(0);
    const arrg = new Array(10).fill(0);
    for (let i = 0; i < secret.length; ++i) {
        if (secret[i] == guess[i]) {
            a++;
        } else {
            arrs[secret[i]]=arrs[secret[i]]+1;
            arrg[guess[i]]=arrg[guess[i]]+1;
        }
    }
    for (let i = 0; i < 10; i++) {
        b+=Math.min(arrs[i],arrg[i])
    }
    return `${a}A${b}B`;
};
//  var getHint = function(secret, guess) {
//     let map=new Map();
//     let a=0,b=0;
//     let length=guess.length;
//     for(let i=0;i<guess.length;i++){
//         if(secret[i]==guess[i]){
//             a++;
//         }
//         map.has(secret[i])?map.set(secret[i],map.get(secret[i])+1):map.set(secret[i],1);
//     }
//     for(let i=0;i<length;i++){
//         console.log(map);
//         if(map.has(guess[i])){
//             b++;
//             if(map.get(guess[i])==1){
//                 map.delete(guess[i]);
//             }
//             else{
//                 map.set(guess[i],map.get(guess[i])-1)
//             }
//         }
//     }
//     return `${a}A${b-a}B`;
// };

// console.log(getHint("1123","0111"));